return {
	-- rust
	{
		"mrcjkb/rustaceanvim",
		version = "^6",
		lazy = false,
	},
	{
		"hedyhli/outline.nvim",
		config = function()
			vim.keymap.set({ "n", "i", "v" }, "<C-o>", "<cmd>Outline<CR>", { desc = "Toggle Outline" })
			require("outline").setup({})
		end,
	},
	{
		"catppuccin/nvim",
		name = "catppuccin",
		lazy = false,
		priority = 1000,               -- 确保优先加载
		opts = {
			flavour = "mocha",           -- 可选: latte, frappe, macchiato, mocha
			transparent_background = false, -- 是否透明背景
			integrations = {
				cmp = true,
				gitsigns = true,
				treesitter = true,
				telescope = true,
				mason = true,
				-- 更多集成见官方文档
			},
		},
		config = function(_, opts)
			require("catppuccin").setup(opts)
			vim.cmd.colorscheme("catppuccin") -- 直接在这里设置主题
		end,
	},
	{
		"mfussenegger/nvim-jdtls",
		dependencies = { "folke/which-key.nvim" },
		ft = { "java", "gradle" },
		opts = function()
			-- https://download.eclipse.org/jdtls/milestones/
			-- wget -c https://www.eclipse.org/downloads/download.php?file=/jdtls/milestones/1.51.0/jdt-language-server-1.51.0-202510022025.tar.gz
			-- wget -c https://projectlombok.org/downloads/lombok.jar
			--
			local root_path = "/root/.config" -- Mac OS: "/Users/<username>"
			local project_path = "/opt/projects" -- Mac OS: "/Users/<username>/<project>"

			local jdtls_install_path = root_path .. "/jdtls"
			local lombok_jar_path = root_path .. "/lombok.jar"

			local project_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":p:h:t")
			local workspace_dir = project_path .. "/.workspace/" .. project_name
			return {
				cmd = {
					"java",
					"-javaagent:" .. lombok_jar_path,
					"-Declipse.application=org.eclipse.jdt.ls.core.id1",
					"-Dosgi.bundles.defaultStartLevel=4",
					"-Declipse.product=org.eclipse.jdt.ls.core.product",
					"-Dlog.protocol=true",
					"-Dlog.level=ALL",
					"-Xms2g",
					"--add-modules=ALL-SYSTEM",
					"--add-opens",
					"java.base/java.util=ALL-UNNAMED",
					"--add-opens",
					"java.base/java.lang=ALL-UNNAMED",
					"-jar",
					vim.fn.glob(jdtls_install_path .. "/plugins/org.eclipse.equinox.launcher_*.jar"),
					"-configuration",
					jdtls_install_path .. "/config_linux", -- Mas OS: ./config_mac_arm
					"-data",
					workspace_dir,
				},

				root_dir = require("jdtls.setup").find_root({ "build.gradle", "pom.xml" }),
			}
		end,
		config = function(_, opts)
			vim.api.nvim_create_autocmd("FileType", {
				pattern = "java",
				callback = function()
					require("jdtls").start_or_attach(opts)
				end,
			})
		end,
	},
}
